With the development of information communication technology, demand for information security is growing. Unpredictability in information security technology depends on the level of randomness of random data used. That is, the security strength is increased by using data of increasing entropy used in information theory. For a 512-bit key, for example, security is reinforced with the entropy increasingly closer to 512.
A method of latching a fast oscillation signal by a sufficiently slower clock has been used as a method of generating random data. If jitter is on a fast oscillation signal, random output can be obtained because the phase of the oscillation signal fluctuates with respect to the clock timing. However, if this configuration is simply adopted, generation efficiency of random data varies depending on the clock timing and oscillation timing, and the amount of jitter, which makes the entropy smaller. In the worst case, the signal is always high or low and no random data is generated. That is, a circuit configuration showing considerable variation in performance is obtained under the influence of manufacturing variation.
A random data generating circuit and a smoothing circuit using a continuous oscillating circuit or intermittent oscillating circuit are known and the problem of variation cannot be avoided even if such an intermittent oscillating circuit is used. If the signal is always high or low, the smoothing circuit becomes useless and high-entropy data cannot be obtained.
According to the technology using a plurality of oscillating circuits or activating an oscillating circuit a plurality of times, performance of the oscillating circuit that outputs the maximum entropy among prepared circuits can be adopted by using the circuits, but more entropy cannot be obtained. According to the method of activating the same oscillating circuit a plurality of times, the method does not work and high-entropy data cannot be obtained if the signal is always high or low.